package com.dream.cgomall.dao;

import com.dream.cgomall.dto.ShoppingDTO;
import com.dream.cgomall.entity.CgoOrder;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface CgoOrderDao {
    //查询不同状态的用户订单数量
    List<Integer> selectGoodsCountByStatus(Integer userId);


    //查询购物车所有商品信息
    List<ShoppingDTO> findShopping(List<Integer> item);

    //通过不同状态的订单查询商品
    List<CgoOrder> findOrderByUserIdAndStatus(@Param("status") Integer status, @Param("userId") Integer userId);
    //查找订单状态
    Integer findStatusByOrderId(Long orderId);
    //添加订单
    Integer insertOrder(@Param("cgoOrder") CgoOrder cgoOrder);
    //通过订单Id查询订单详情
    CgoOrder findOrderByOrderId(Integer orderId);
    /**
     * 修改订单状态
     *
     * @param orderId
     * @param i       要修改的状态
     *                0-待付款 1-待发货 2-待收货 3-待评价 4-交易成功 5-交易关闭(退款,订单超时)
     * @return
     */
    Integer updateOrderStatus(@Param("orderID") Long orderId, @Param("i") Integer i);

}
